This is a memo for micrOMEGAs.
The latest version seems uploaded here.

Install
Do gmake or make.

preparation
You might need your working directory with your model, say abeModel. You should type
    ./newProject abeModel
    
This creates a directory whose name is abeModel. Then go to
./abeModel/work/
and launch calchep and install your model.
Note that your Z2 odd particles should be named as
    ~x, ~y, ~z, 
    
and so on.

basics
Go to ./abeModel, and do
    gmake main.c (or make main.c)
    
Then it generates main execute file, main*. You can start calculation by
    ./main data.par
    
Then you will find the result.

main.c and data.par
You need to modify main.c and data.par as you want.
If you make main_abe.c and do make main_abe.c, you will find main_abe*.

Option in "main.c":

    fast=1/0 : fast/accurate calculation.

data.par
You can change input parameters in your model via data.par.
Its format is

    mh   125   # mass of SM higgs 
    lam  0.4   # coupling
    
and so on. The parameters should be defined in your calchep model file. You can skip comments which start from #.

findValW

You can read the value of the variables in your model files by using findValW(name). For example,

      printf("hogehoge=%.2e",findValW("MZ"));
    
returns 91.1876.

You can not get all the values as a default. If you want to get all the values which defined in func1.mdl, then you should add %Local! in the last line in func1.mdl file.

findBr

You can read the width and branching ratio by specifying the PDG number of the particle. For example, go to #ifdef DECAYS in your main.c file, and

       pname=pdg2name(990012);
       if(pname) 
       {  width=pWidth(pname,&LZ);
          printf("\n %s :   total width=%E \n and Branchings:\n",pname,width);
          printTxtList(LZ,stdout);
          printf("%s :   Br=%E \n",pname,findBr(LZ,"Z,~DM1"));
       } else printf("Z particle is detected in the model\n");
    
This returns
     ~DM2 :   total width=2.126913E-01 
     and Branchings:
    9.976916E-01 ~DM2 -> Z,~DM1
    2.308332E-03 ~DM2 -> H,~DM1
    ~DM2 :   Br=9.976916E-01 
    
990012 is the PDG code of ~DM2 defined in the model file.

assignVal

You can change model parameters as

    assignVal("vs",1000.0);
    sortOddParticles(cdmName);
  
where vs is a model parameter. Note that we need "sortOddParticles(cdmName);" to make micrOMGEAs recognizes we set new parameters.

darkOmegaN

"darkOmegaN" can be used when you consider co-scattering, decay, or more than two thermal baths. It shows a lot of message on the screen. If you would like to suppress it, do

    ./main data.par >/dev/null
  
">/dev/null" supresses the message. If you would like to show something, such as Omegah2 you obtained, on the screen, you can use "fprintf" like
 
    fprintf(stderr, "Omegah2=%.4E, darkOmegaN(fast,Beps,&err) );
  
and use ">/dev/null". Do not use "&>/dev/null", which does not show anything on the screen.

hCollider

You can calculate cross section at the LHC/Tevatron by hCollider . Go to #ifdef CROSS_SECTIONS in your main.c file, and write, for example,

    #ifdef CROSS_SECTIONS
    {
        printf( "%.3E \n", hCollider(4000.0, 1, 1,"~DM2","~ch-"));   
    }
    
This returns the cross section of pp to ~DM2 ~ch- at 8TeV in pp collider.
If you want to calculate cross section ([pb]) at p p-bar collider, change the second argument from 1 to, say, -1. PDF is CTEQ6L.
The third argument set the QCD scale. I do not know details. But if you set it 0, then the largest mass of outgoing particles is used to set the QCD scale.



go to index